.\"
.\" Copyright 1993-2005 Werner Almesberger
.\"           2005-2020 Craig Small
.\" This program is free software; you can redistribute it and/or modify
.\" it under the terms of the GNU General Public License as published by
.\" the Free Software Foundation; either version 2 of the License, or
.\" (at your option) any later version.
.\"
.\"*******************************************************************
.\"
.\" This file was generated with po4a. Translate the source file.
.\"
.\"*******************************************************************
.TH FUSER 1 2020\-09\-09 psmisc "Пользовательские команды"
.SH ИМЯ
fuser \- ищет процессы, использующие указанные файлы или сокеты
.SH ОБЗОР
.ad l
\fBfuser\fP [\fB\-fuv\fP] [\fB\-a\fP|\fB\-s\fP] [\fB\-4\fP|\fB\-6\fP] [\fB\-c\fP|\fB\-m\fP|\fB\-n\fP \fIspace\fP]
[\fB\ \-k\fP [\fB\-i\fP] [\fB\-M\fP] [\fB\-w\fP] [\fB\-\fP\fISIGNAL\fP] ] \fIname\fP ...
.br
\fBfuser \-l\fP
.br
\fBfuser \-V\fP
.ad b
.SH ОПИСАНИЕ
\fBfuser\fP выводит PID процессов, которые используют заданные файлы или
файловые системы. В режиме показа по умолчанию к каждому PID добавляется
буква, обозначающая тип доступа:
.PP
.RS
.PD 0
.TP 
\fBc\fP
текущий каталог.
.TP 
\fBe\fP
работающий исполняемый файл.
.TP 
\fBf\fP
открытый файл. В режиме отображения по умолчанию \fBf\fP не выводится.
.TP 
\fBF\fP
открытый на запись файл. В режиме отображения по умолчанию \fBF\fP не
выводится.
.TP 
\fBr\fP
корневой каталог.
.TP 
\fBm\fP
mmap\-нутый файл или общая библиотека.
.TP 
\&\fB.\fP
Символ место замещения, в режиме отображения по умолчанию не выводится.
.PD
.RE
.LP
\fBfuser\fP возвращает ненулевой код выхода, если ни к одному из указанных
файлов никто не обращается или возникла критическая ошибка. Если найден хотя
бы один доступ, то \fBfuser\fP возвращает ноль.
.PP
Чтобы найти процессы, использующие сокеты TCP и UDP нужно в параметре \fB\-n\fP
указать соответствующую область имён. По умолчанию \fBfuser\fP просматривает
сокеты IPv6 и IPv4. Чтобы изменить поведение по умолчанию укажите параметр
\fB\-4\fP и \fB\-6\fP. Сокеты можно задавать по локальному и удалённому порту и
удалённому адресу. Все поля необязательны, но должны указываться запятые их
разделяющие:
.PP
[\fIлокальный_порт\fP][,[\fIудалённый_узел\fP][,[\fIудалённый_порт\fP]]]
.PP
Для IP\-адресов и портов можно использовать символьные или числовые значения.
.PP
\fBfuser\fP выводит в stdout только PID\-ы , всё остальное отправляется в
stderr.
.SH ПАРАМЕТРЫ
.TP 
\fB\-a\fP, \fB\-\-all\fP
Показывать все файлы, указанные в командной строке. По умолчанию выводятся
только файлы, которые используются хотя бы одним процессом.
.TP 
\fB\-c\fP
Тоже, что и параметр \fB\-m\fP, используется для совместимости с POSIX.
.TP 
\fB\-f\fP
Игнорируется, используется для совместимости с POSIX.
.TP 
\fB\-k\fP, \fB\-\-kill\fP
Завершить процессы, обращающиеся файлу. Если не указан \fB\-\fP\fIСИГНАЛ\/\fP, то
посылается SIGKILL. Процесс \fBfuser\fP никогда не завершает сам себя, но может
завершить другие процессы \fBfuser\fP. Перед завершением эффективный
пользовательский ID процесса, выполняющего \fBfuser\fP, устанавливается в его
действительный пользовательский ID.
.TP 
\fB\-i\fP, \fB\-\-interactive\fP
Запрашивать у пользователя подтверждение завершения процесса. Этот параметр
игнорируется, если не указан \fB\-k\fP.
.TP 
\fB\-I\fP, \fB\-\-inode\fP
Для области имён \fBfile\fP выполнять все сравнения основываясь на инодах
указанных файлов и никогда не использовать имена файлов, даже для файлов в
сетевых файловых системах.
.TP 
\fB\-l\fP, \fB\-\-list\-signals\fP
Показать все известные имена сигналов.
.TP 
\fB\-m\fP\fI NAME\fP, \fB\-\-mount \fP\fINAME\fP
\fINAME\fP specifies a file on a mounted file system or a block device that is
mounted.  All processes accessing files on that file system are listed.  If
a directory is specified, it is automatically changed to \fINAME\fP/ to use any
file system that might be mounted on that directory.
.TP 
\fB\-M\fP, \fB\-\-ismountpoint\fP
Выполнять запрос, только если \fIИМЯ\fP является точкой монтирования. Это
бесценный ремень безопасности, который не позволит угробить машину, если
\fIИМЯ\fP вдруг не является файловой системой.
.TP 
\fB\-w\fP
Завершать только процессы с правами на запись. Этот параметр игнорируется,
если не указан \fB\-k\fP.
.TP 
\fB\-n\fP\fI ОБЛАСТЬ\fP, \fB\-\-namespace \fP\fIОБЛАСТЬ\fP
Выбрать другую область имён. Поддерживаются области имён \fBfile\fP (имена
файлов, по умолчанию), \fBudp\fP (локальные порты UDP) и \fBtcp\fP (локальные
порты TCP). Порты могут указываться номером или символическим именем. Если
не возникает двусмысленности, то можно использовать сокращённую запись
\fIимя\fP\fB/\fP\fIобласть\fP (например, \fI80\fP\fB/\fP\fItcp\fP).
.TP 
\fB\-s\fP, \fB\-\-silent\fP
Не выводить сообщения. В этом режиме игнорируются \fB\-u\fP и \fB\-v\fP. Параметр
\fB\-a\fP нельзя использовать вместе с \fB\-s\fP.
.TP 
\fB\-\fP\fIСИГНАЛ\fP
Для завершения процессов посылать указанный сигнал вместо SIGKILL. Сигналы
могут задаваться именем (например, \fB\-HUP\fP) или номером (например,
\fB\-1\fP). Этот параметр игнорируется, если не указан \fB\-k\fP.
.TP 
\fB\-u\fP, \fB\-\-user\fP
Добавлять имя пользователя владельца процесса к каждому PID.
.TP 
\fB\-v\fP, \fB\-\-verbose\fP
Подробный режим. Процессы показываются в стиле \fBps\fP. Поля PID, USER и
COMMAND как у \fBps\fP. В ACCESS показан тип доступа процесса к
файлу. Подробный режим будет также использоваться при использовании
определённого файла в качестве точки монтирования, экспорта knfs или файла
подкачки. В этом случае вместо PID выводится обозначение \fBkernel\fP.
.TP 
\fB\-V\fP, \fB\-\-version\fP
Показать информацию о версии.
.TP 
\fB\-4\fP, \fB\-\-ipv4\fP
Поиск только среди сокетов IPv4. Этот параметр не должен использоваться
вместе с \fB\-6\fP и применяется только с областями имён tcp и udp.
.TP 
\fB\-6\fP, \fB\-\-ipv6\fP
Поиск только среди сокетов IPv6. Этот параметр не должен использоваться
вместе с \fB\-4\fP и применяется только с областями имён tcp и udp.
.IP \fB\-\fP
Отменить значения всех параметров и установить сигнал обратно в SIGKILL.
.SH ФАЙЛЫ
.TP 
/proc
местонахождение файловой системы proc
.SH ПРИМЕРЫ
.TP 
\fBfuser \-km /home\fP
завершить все процессы, обращающиеся к файловой системе /home любым
способом.
.TP 
\fBif fuser \-s /dev/ttyS1; then :; else \fP\fIкоманда\fP\fB; fi\fP
вызвать \fIкоманду\fP, если нет процессов, использующих /dev/ttyS1.
.TP 
\fBfuser telnet/tcp\fP
показать все процессы на (локальном) порту TELNET.
.SH ОГРАНИЧЕНИЯ
Процессы, обращающиеся к одному файлу или файловой системе несколько раз
одним и тем же способом, выводятся однократно.
.PP
Если в командной строке один объект указывается несколько раз, то некоторые
из этих элементов могут игнорироваться.
.PP
\fBfuser\fP может собирать некоторую информацию только имея дополнительные
права. В частности, открытые процессами файлы, принадлежащие другим
пользователям, могут не появиться, а исполняемые файлы могут быть отнесены
только к отображённым.
.PP
\fBfuser\fP не может сообщить о процессах, если не имеет прав поиска в таблице
файловых дескрипторов. Чаще всего эта проблема возникает при поиске сокетов
TCP или UDP в случае, если \fBfuser\fP запускается без прав пользователя
root. В этом случае \fBfuser\fP сообщит, что нет доступа.
.PP
Установка \fBfuser\fP как SUID root решит проблему доступа к определённой
информации, но может быть нежелательна при соблюдении безопасности и
конфиденциальности.
.PP
Области имён \fBudp\fP, \fBtcp\fP и доменные сокеты UNIX не опрашиваются, если
используются ядра старее версии 1.3.78.
.PP
Обращения ядра показываются только с параметром \fB\-v\fP.
.PP
Параметр \fB\-k\fP применим только для процессов. Если пользователем является
ядро, то \fBfuser\fP выводит только совет и ничего не делает.
.SH ДЕФЕКТЫ
.PP
\fBfuser \-m /dev/sgX\fP покажет (или завершит, если указан \fB\-k\fP) все процессы,
даже если у вас нет этого настроенного устройства. Также, для этого могут
быть другие устройства.
.PP
При параметре монтирования \fB\-m\fP найдутся все файлы на том же устройстве,
что и указанный файл, дополнительно укажите параметр \fB\-M\fP, если вы
подразумевали только точку монтирования.
.SH "СМОТРИТЕ ТАКЖЕ"
\fBkill\fP(1), \fBkillall\fP(1), \fBlsof\fP(8), \fBpkill\fP(1), \fBps\fP(1), \fBkill\fP(2).
